package com.ruoyi.system.service;

import com.ruoyi.common.core.domain.entity.Customer;

import java.util.List;

/**
 * 供应商 业务层
 *
 * @author kc
 */
public interface CustomerService {
    /**
     * 供应商查询
     */
    public List<Customer> CustomerQuery(Customer bo);

    /**
     * 供应商查询
     */
    public List<Customer> CustomerValidQuery(Customer bo);

    /**
     * 通过供应商ID查询供应商
     *
     * @param customerId 供应商ID
     * @return 供应商对象信息
     */
    public Customer selectCustomerById(Long customerId);

    /**
     * 校验用户是否允许操作
     *
     * @param user 用户信息
     */
//    public void checkUserAllowed(SysUser user);

    /**
     * 校验用户是否有数据权限
     *
     * @param userId 用户id
     */
//    public void checkUserDataScope(Long userId);

    /**
     * 新增保存供应商信息
     *
     * @param bo 供应商信息
     * @return 结果
     */
    public int insertCustomer(Customer bo);

    /**
     * 修改保存供应商信息
     *
     * @param bo 供应商信息
     * @return 结果
     */
    public int updateCustomer(Customer bo);

    /**
     * 删除供应商信息
     *
     * @param customerId 需要删除的供应商ID
     * @return 结果
     */
    public int deleteCustomerByIds(Long[] customerId);

    /**
     * 导入供应商数据
     *
     * @param CustomerList    供应商数据列表
     * @param isUpdateSupport 是否更新支持，如果已存在，则进行更新数据
     * @param operName        操作用户
     * @return 结果
     */
    public String importCustomer(List<Customer> CustomerList, Boolean isUpdateSupport, String operName);

}
